package com.wzy.controller;

import com.github.pagehelper.PageInfo;
import com.wzy.entity.Yjs;
import com.wzy.service.YjsService;
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Controller;
import org.springframework.ui.Model;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RequestParam;

import java.io.IOException;

@Controller
@RequestMapping("yjs")
public class YjsController {
    private static final Logger log = LoggerFactory.getLogger(YjsController.class);

    private YjsService yjsService;

    @Autowired
    public YjsController(YjsService yjsService) {
        this.yjsService = yjsService;
    }

    @RequestMapping("lists")
    public String lists(Model model, @RequestParam(value = "pageIndex",defaultValue = "1") int pageIndex,
                        @RequestParam(value = "pageSize",defaultValue = "5",required = false) int pageSize){
        PageInfo page = yjsService.lists(pageIndex,pageSize);
        model.addAttribute("ylist","lists?pageIndex=");//给页数默认值
        model.addAttribute("page",page);
        //获得当前页
        return "ylist";
    }
    @RequestMapping("save")
    public String save(Yjs yjs) throws IOException {
        log.debug("类型:{}, 姓名:{}, 年龄:{} ,性别:{}", yjs.getYtype(), yjs.getYname(), yjs.getYage(),yjs.getYsex());
        yjsService.save(yjs);
        return "redirect:/yjs/lists";//保存成功跳转到列表页面
    }

    @RequestMapping("detail")
    public String detail(Integer yid, Model model) {
        log.debug("当前查询研究生id: {}", yid);
        //1.根据id查询一个
        Yjs yjs = yjsService.findById(yid);
        model.addAttribute("yjs", yjs);
        return "updateYjs";//跳转到更新页面
    }

    @RequestMapping("update")
    public String update(Yjs yjs) throws IOException {

        log.debug("更新之后研究生信息: id:{},类型:{}, 姓名:{}, 年龄:{} ,性别:{}", yjs.getYid(), yjs.getYtype(), yjs.getYname(), yjs.getYage(),yjs.getYsex());
        yjsService.update(yjs);
        return "redirect:/yjs/lists";//更新成功,跳转到研究生列表
    }

    @RequestMapping("delete")
    public String delete(Integer yid){
        log.debug("删除的研究生id: {}",yid);
        //1.删除数据
        yjsService.delete(yid);
        return "redirect:/yjs/lists";//跳转到员工列表
    }

}
